﻿using System;
using System.Collections;
using System.Configuration;
using System.Data;
using System.Linq;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Xml.Linq;
using System.Collections.Generic;
using Business = VietStar.Library.Business;
using Entity = VietStar.Library.Entity;
using VietStar.Library.Commom.Module;

public partial class controls_admin_detailhoadon : System.Web.UI.UserControl
{
    //Khởi tạo giá trị ban đầu cho cột STT trong bảng danh sách thành viên
    public int stt = 1;

    //Khai báo biến kiểu DataTable chứa dữ liệu lấy từ bảng ThanhVien từ CSDL
    private static DataTable dtChiTietHoaDon = new DataTable();
    DataTable dtHoaDon = new DataTable();
    Entity.HoaDon clsE_HoaDon = new VietStar.Library.Entity.HoaDon();
    Business.HoaDon clsB_HoaDon = new VietStar.Library.Business.HoaDon();
    Entity.ChiTietHoaDon clsE_ChiTietHoaDon = new VietStar.Library.Entity.ChiTietHoaDon();
    Business.ChiTietHoaDon clsB_ChiTietHoaDon = new VietStar.Library.Business.ChiTietHoaDon();
    int info=0;
    protected void Page_Load(object sender, EventArgs e)
    {
        if (!IsPostBack)
        {
            info = Convert.ToInt32(Request.QueryString["key"].ToString());
            clsE_HoaDon.Id = info;
            clsE_ChiTietHoaDon.MaHD = info;
            dtHoaDon = clsB_HoaDon.Select_HoaDon_Primarykey(clsE_HoaDon);
            lblMaHD.Text = dtHoaDon.Rows[0]["Id"].ToString();
            txtTenDN.Text = dtHoaDon.Rows[0]["TenDangNhap"].ToString();
            txtTenKH.Text = dtHoaDon.Rows[0]["TenDayDu"].ToString();
            txtDiaChi.Text = dtHoaDon.Rows[0]["DiaChi"].ToString();
            txtSDT.Text = dtHoaDon.Rows[0]["SoDienThoai"].ToString();
            txtEmail.Text = dtHoaDon.Rows[0]["Email"].ToString();
            txtNgayLap.Text = dtHoaDon.Rows[0]["NgayLapHD"].ToString();
            txtChietKhau.Text = dtHoaDon.Rows[0]["ChietKhau"].ToString();
            txtTongThanhTien.Text =Convert.ToDecimal(dtHoaDon.Rows[0]["TongTien"].ToString()).ToString("N0");
            VietStar.Library.Commom.Algorithm.Converts converttotext = new VietStar.Library.Commom.Algorithm.Converts();
            lbTongThanhTienBangChu.Text = converttotext.ConvertNumberToText(dtHoaDon.Rows[0]["TongTien"].ToString()) + " đồng ./";
            Page.Title = "Chi tiết hóa đơn số " + info; 
            dtChiTietHoaDon = clsB_ChiTietHoaDon.Select_TheoMaHD(clsE_ChiTietHoaDon);
            Load_ChiTietHoaDon();
        }
    }
    private void Load_HoaDon()
    {
        lblMaHD.Text = "";
        txtTenDN.Text = "";
        txtTenKH.Text = "";
        txtDiaChi.Text = "";
        txtSDT.Text = "";
        txtEmail.Text = "";
        txtNgayLap.Text = "";
    }
    private void Load_ChiTietHoaDon()
    {
        rptChiTietHoaDon.DataSource = dtChiTietHoaDon;
        rptChiTietHoaDon.DataBind();
    }    

    protected void btnQuayLai_Click(object sender, EventArgs e)
    {
        Response.Redirect("~/admin/listhoadon.aspx");
    }
    protected void btnLamMoi_Click(object sender, EventArgs e)
    {
        clsE_ChiTietHoaDon.MaHD = info;
        dtChiTietHoaDon = clsB_ChiTietHoaDon.Select_TheoMaHD(clsE_ChiTietHoaDon);        
        Load_ChiTietHoaDon();
    }
    protected void rptChiTietHoaDon_ItemCommand(object source, RepeaterCommandEventArgs e)
    {
        try
        {
            //Nếu click nút xóa từ danh sách
            if (e.CommandName == "xoa")
            {
                bool xoa = false;
                bool xoahd = false;
                clsE_ChiTietHoaDon.Id = Convert.ToDecimal(e.CommandArgument.ToString());
                xoa = clsB_ChiTietHoaDon.Delete(clsE_ChiTietHoaDon);
                if (xoa == true)
                {
                    Alert.Show("Xóa mẫu tin thành công");
                    clsE_ChiTietHoaDon.MaHD = Convert.ToDecimal(lblMaHD.Text);
                    clsE_HoaDon.Id = Convert.ToDecimal(lblMaHD.Text);
                    dtChiTietHoaDon = clsB_ChiTietHoaDon.Select_TheoMaHD(clsE_ChiTietHoaDon);
                    if (dtChiTietHoaDon.Rows.Count == 0)
                    {
                        xoahd = clsB_HoaDon.Delete(clsE_HoaDon);
                        Load_HoaDon();
                        rptChiTietHoaDon.DataSource = null;
                        rptChiTietHoaDon.DataBind();
                    }
                    else
                    {                        
                        Load_ChiTietHoaDon();
                    }
                }
                else
                {
                    Alert.Show("Xóa mẫu tin không thành công!");
                    clsE_ChiTietHoaDon.MaHD = Convert.ToDecimal(lblMaHD.Text);
                    dtChiTietHoaDon = clsB_ChiTietHoaDon.Select_TheoMaHD(clsE_ChiTietHoaDon);                    
                    Load_ChiTietHoaDon();
                }
            }
        }
        catch (Exception ex)
        {
            throw ex;
        }
    }
    protected void btnxoa_Click(object sender, EventArgs e)
    {
        try
        {
            bool xoahd = false;
            //Duyệt tất cả các item trong Repeater
            foreach (RepeaterItem liItem in rptChiTietHoaDon.Items)
            {
                CheckBox cbIdChiTietHoaDon = liItem.FindControl("CheckSelect") as CheckBox;
                //Nếu trạng thái của checkbox = Checked
                if (cbIdChiTietHoaDon.Checked)
                {
                    string liIdChiTiet = (liItem.FindControl("ltIdChiTiet") as Literal).Text;
                    clsE_ChiTietHoaDon.Id = Convert.ToDecimal(liIdChiTiet);
                    bool xoa = false;
                    xoa = clsB_ChiTietHoaDon.Delete(clsE_ChiTietHoaDon);
                    if (xoa == true)
                    {
                        Alert.Show("Xóa các mẫu tin được chọn thành công!");
                    }
                    else
                    {
                        Alert.Show("Xóa các mẫu tin được chọn không thành công!");
                    }
                }
            }
            //Load lại danh sách thành viên sau khi xóa 
            clsE_ChiTietHoaDon.MaHD = Convert.ToDecimal(lblMaHD.Text);
            dtChiTietHoaDon = clsB_ChiTietHoaDon.Select_TheoMaHD(clsE_ChiTietHoaDon);
            clsE_HoaDon.Id = Convert.ToDecimal(lblMaHD.Text);
            if (dtChiTietHoaDon.Rows.Count == 0)
            {
                xoahd = clsB_HoaDon.Delete(clsE_HoaDon);
                Load_HoaDon();
                rptChiTietHoaDon.DataSource = null;
                rptChiTietHoaDon.DataBind();
            }
            else
            {                
                Load_ChiTietHoaDon();
            }
        }
        catch (Exception ex)
        {
            throw ex;
        }
    }
}
